package com.youdoneed.user.query;

import com.querydsl.core.types.Path;
import com.querydsl.core.types.PathMetadata;
import com.querydsl.core.types.dsl.DateTimePath;
import com.querydsl.core.types.dsl.StringPath;
import com.querydsl.sql.ColumnMetadata;
import com.youdoneed.user.model.InviteHistory;

import javax.annotation.Generated;
import java.sql.Types;

import static com.querydsl.core.types.PathMetadataFactory.forVariable;

/**
 * QInviteHistory is a Querydsl query type for InviteHistory
 */
@Generated("com.querydsl.sql.codegen.MetaDataSerializer")
public class QInviteHistory extends com.querydsl.sql.RelationalPathBase<InviteHistory> {

    private static final long serialVersionUID = -1443524162;

    public static final QInviteHistory InviteHistory = new QInviteHistory("InviteHistory");

    public final DateTimePath<java.util.Date> inviteTime = createDateTime("inviteTime", java.util.Date.class);

    public final StringPath phoneNo = createString("phoneNo");

    public final StringPath userId = createString("userId");

    public final com.querydsl.sql.PrimaryKey<InviteHistory> primary = createPrimaryKey(phoneNo, userId);

    public QInviteHistory(String variable) {
        super(InviteHistory.class, forVariable(variable), "null", "InviteHistory");
        addMetadata();
    }

    public QInviteHistory(String variable, String schema, String table) {
        super(InviteHistory.class, forVariable(variable), schema, table);
        addMetadata();
    }

    public QInviteHistory(String variable, String schema) {
        super(InviteHistory.class, forVariable(variable), schema, "InviteHistory");
        addMetadata();
    }

    public QInviteHistory(Path<? extends InviteHistory> path) {
        super(path.getType(), path.getMetadata(), "null", "InviteHistory");
        addMetadata();
    }

    public QInviteHistory(PathMetadata metadata) {
        super(InviteHistory.class, metadata, "null", "InviteHistory");
        addMetadata();
    }

    public void addMetadata() {
        addMetadata(inviteTime, ColumnMetadata.named("inviteTime").withIndex(3).ofType(Types.TIMESTAMP).withSize(19));
        addMetadata(phoneNo, ColumnMetadata.named("phoneNo").withIndex(2).ofType(Types.VARCHAR).withSize(20).notNull());
        addMetadata(userId, ColumnMetadata.named("userId").withIndex(1).ofType(Types.VARCHAR).withSize(20).notNull());
    }

}

